package com.example.homeworkmanagement.service;

import com.example.homeworkmanagement.dto.ClassesAndStudentsDTO;
import com.example.homeworkmanagement.pojo.Students;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.homeworkmanagement.vo.ResultVO;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author 拒绝加班
 * @since 2025-05-25
 */
public interface StudentsService extends IService<Students> {
    //登录
    public ResultVO<Students> login(String student_id, String password)throws Exception;

    // 单表
    // 获取所有学生列表
    ResultVO<List<Students>> getStudentList(Students student, int page, int size);

    // 根据学号获取学生详情
    ResultVO<Students> getStudentDetail(String studentId);

    // 添加学生
    ResultVO<Students> addStudent(Students student);

    // 更新学生信息
    ResultVO<Students> updateStudent(Students student);

    // 删除学生（根据学号）
    ResultVO<String> deleteStudent(String studentId);

    // 根据班级id查询班级学生人数
    ResultVO<Integer> selectStudentCountByClassId(String classId);

    // 根据班级ID串获取班级学生列表
    ResultVO<List<Students>> selectStudentListByClassIds(String classIds,int page,int size);

    //多表
    //组合查询学生个人信息与班级信息
    ResultVO<ClassesAndStudentsDTO> selectStudentAndClassInfo(String studentId);
}
